-- Network Working Group                                     T. Nadeau, Ed.
-- Request for Comment: 4801                            Cisco Systems, Inc.
-- Category: Standards Track                                 A. Farrel, Ed.
--                                                       Old Dog Consulting
--                                                            February 2007


--                 Definitions of Textual Conventions for
--       Generalized Multiprotocol Label Switching (GMPLS) Management

   GMPLS-TC-STD-MIB DEFINITIONS ::= BEGIN

   IMPORTS
     MODULE-IDENTITY
       FROM SNMPv2-SMI                                    -- RFC 2578
     TEXTUAL-CONVENTION
       FROM SNMPv2-TC                                     -- RFC 2579
     mplsStdMIB
       FROM MPLS-TC-STD-MIB                               -- RFC 3811
   ;

   gmplsTCStdMIB MODULE-IDENTITY
     LAST-UPDATED
       "200702280000Z" -- 28 February 2007 00:00:00 GMT
     ORGANIZATION
       "IETF Common Control and Measurement Plane (CCAMP) Working Group"
     CONTACT-INFO
       "       Thomas D. Nadeau
               Cisco Systems, Inc.
        Email: tnadeau@cisco.com

               Adrian Farrel
               Old Dog Consulting
        Email: adrian@olddog.co.uk

        Comments about this document should be emailed directly to the
        CCAMP working group mailing list at ccamp@ops.ietf.org"
     DESCRIPTION
       "Copyright (C) The IETF Trust (2007).  This version of
        this MIB module is part of RFC 4801; see the RFC itself for
        full legal notices.

        This MIB module defines TEXTUAL-CONVENTIONs for concepts used in
        Generalized Multiprotocol Label Switching (GMPLS) networks."
     REVISION
        "200702280000Z" -- 28 February 2007 00:00:00 GMT
     DESCRIPTION
       "Initial version published as part of RFC 4801."
   ::= { mplsStdMIB 12 }

   GmplsFreeformLabelTC ::= TEXTUAL-CONVENTION
     STATUS      current
     DESCRIPTION
       "This TEXTUAL-CONVENTION can be used as the syntax of an object
        that contains any GMPLS Label.  Objects with this syntax can be
        used to represent labels that have label types that are not
        defined in any RFCs.  The freeform GMPLS Label may also be used
        by systems that do not wish to represent labels that have
        label types defined in RFCs using type-specific syntaxes."
     REFERENCE
       "1. Generalized Multi-Protocol Label Switching (GMPLS) Signaling
           Functional Description, RFC 3471, section 3.2."
     SYNTAX OCTET STRING (SIZE (0..64))

   GmplsLabelTypeTC ::= TEXTUAL-CONVENTION
     STATUS      current
     DESCRIPTION
       "Determines the interpretation that should be applied to an
        object that encodes a label.  The possible types are:

        gmplsMplsLabel(1)           - The label is an MPLS Packet, Cell,
                                      or Frame Label and is encoded as
                                      described for the TEXTUAL-
                                      CONVENTION MplsLabel defined in
                                      RFC 3811.

        gmplsPortWavelengthLabel(2) - The label is a Port or Wavelength
                                      Label as defined in RFC 3471.

        gmplsFreeformLabel(3)       - The label is any form of label
                                      encoded as an OCTET STRING using
                                      the TEXTUAL-CONVENTION
                                      GmplsFreeformLabel.

        gmplsSonetLabel(4)          - The label is a Synchronous Optical
                                      Network (SONET) Label as
                                      defined in RFC 4606.

        gmplsSdhLabel(5)            - The label is a Synchronous Digital
                                      Hierarchy (SDH) Label as defined
                                      in RFC 4606.

        gmplsWavebandLabel(6)       - The label is a Waveband Label as
                                      defined in RFC 3471."
     REFERENCE
       "1. Generalized Multi-Protocol Label Switching (GMPLS) Signaling
           Functional Description, RFC 3471, section 3.
        2. Definition of Textual Conventions and for Multiprotocol Label
           Switching (MPLS) Management, RFC 3811, section 3.
        3. Generalized Multi-Protocol Label Switching (GMPLS) Extensions
           for Synchronous Optical Network (SONET) and Synchronous
           Digital Hierarchy (SDH) Control, RFC 4606."
      SYNTAX INTEGER {
        gmplsMplsLabel(1),
        gmplsPortWavelengthLabel(2),
        gmplsFreeformGeneralizedLabel(3),
        gmplsSonetLabel(4),
        gmplsSdhLabel(5),
        gmplsWavebandLabel(6)
      }

   GmplsSegmentDirectionTC ::= TEXTUAL-CONVENTION
     STATUS      current
     DESCRIPTION
       "The direction of data flow on an Label Switched Path (LSP)
        segment with respect to the head of the LSP.

        Where an LSP is signaled using a conventional signaling
        protocol, the 'head' of the LSP is the source of the signaling
        (also known as the ingress) and the 'tail' is the destination
        (also known as the egress).  For unidirectional LSPs, this
        usually matches the direction of flow of data.

        For manually configured unidirectional LSPs, the direction of
        the LSP segment matches the direction of flow of data.  For
        manually configured bidirectional LSPs, an arbitrary decision
        must be made about which LER is the 'head'."
     SYNTAX  INTEGER {
       forward(1),   -- data flows from head-end of LSP toward tail-end
       reverse(2)    -- data flows from tail-end of LSP toward head-end
     }

   END